package com.abvnet.project.water.project.service;

import com.abvnet.project.water.project.domain.MicroBar;
import com.abvnet.project.water.project.domain.ProjectLog;
import com.abvnet.project.water.project.domain.ProjectLogMicro;
import com.abvnet.project.water.project.domain.WaterChart;

import java.util.List;

/**
 * 项目日志 服务层
 * 
 * @author duj
 * @date 2019-07-19
 */
public interface IProjectLogService {
	/**
     * 查询项目日志信息
     * 
     * @param logId 项目日志ID
     * @return 项目日志信息
     */
	ProjectLog selectProjectLogById(Long logId);

	ProjectLog selectProjectLogForApi(Long logId);

	List<ProjectLogMicro> selectProjectLogMicroByLogId(Long logId);
	
	/**
     * 查询项目日志列表
     * 
     * @param projectLog 项目日志信息
     * @return 项目日志集合
     */
	List<ProjectLog> selectProjectLogList(ProjectLog projectLog);

	List<ProjectLog> selectCustomerProjectLogList(ProjectLog projectLog);

    List<ProjectLog> selectProjectLogListForApi(ProjectLog projectLog);

    WaterChart selectProjectLogListForData(ProjectLog projectLog);

    MicroBar selectProjectLogMicroListForData(ProjectLog projectLog);

	/**
     * 新增项目日志
     * 
     * @param projectLog 项目日志信息
     * @return 结果
     */
	int insertProjectLog(ProjectLog projectLog);
	
	/**
     * 修改项目日志
     * 
     * @param projectLog 项目日志信息
     * @return 结果
     */
	int updateProjectLog(ProjectLog projectLog);
		
	/**
     * 删除项目日志信息
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
	int deleteProjectLogByIds(String ids);

	/**
	 * 导入项目日志
	 * @param projectLogList
	 * @return
	 */
	String importProjectLog(Long projectId, List<ProjectLog> projectLogList);
}
